{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 63,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/Users/vb/anaconda3/lib/python3.7/site-packages/matplotlib/__init__.py:846: MatplotlibDeprecationWarning: \n",
      "The text.latex.unicode rcparam was deprecated in Matplotlib 2.2 and will be removed in 3.1.\n",
      "  \"2.2\", name=key, obj_type=\"rcparam\", addendum=addendum)\n",
      "/Users/vb/anaconda3/lib/python3.7/site-packages/matplotlib/__init__.py:855: MatplotlibDeprecationWarning: \n",
      "examples.directory is deprecated; in the future, examples will be found relative to the 'datapath' directory.\n",
      "  \"found relative to the 'datapath' directory.\".format(key))\n",
      "/Users/vb/anaconda3/lib/python3.7/site-packages/matplotlib/__init__.py:947: UserWarning: could not find rc file; returning defaults\n",
      "  warnings.warn(message)\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 2.1 Linear Functions"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Functions in <s>Julia</s> Python"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "f = lambda x: x[0]+x[1]-(x[3])**2\n",
    "g = lambda x,a: sum([x[n]*a[n] for n in range(len(x)) if range(len(x)) == range(len(a))])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-5, 10)"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "x = [-1,0,1,2]\n",
    "a = [1,2,3,4]\n",
    "f(x), g(x,a)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Superposition"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "1. Homogeneity property: f(ax) = a(fx)\n",
    "2. Additivity property: f(x+y) = f(x) + f(y)\n",
    "3. Superposition: f(ax+by) = a(fx)+b(fy)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "a = np.array([-2,0,1,-3])\n",
    "f = lambda x: np.inner(a,x)\n",
    "x,y = np.array([2,2,-1,1]), np.array([0,1,-1,0])\n",
    "alpha, beta = 1.5,-3.7"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-8.3, -8.3)"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "lhs,rhs = f(alpha*x + beta*y), alpha*f(x) + beta*f(y)\n",
    "lhs,rhs"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "e3 = [0,0,1,0]\n",
    "f(e3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "-0.25"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "avg = lambda x: np.inner((np.ones(len(x))/len(x)),x)\n",
    "x = np.array([1,-3,2,-1])\n",
    "avg(x)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 2.2 Taylor Approximations"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(3.718281828459045, 3.718281828459045)"
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#This is an example of a non linear, non affine function, \n",
    "#being approximated by a function that is linear and affine\n",
    "\n",
    "from math import exp\n",
    "f = lambda x: x[0] + exp(x[1]-x[0]) #some function x+e**(2x-x)\n",
    "grad_f = lambda x: [1-exp(x[1]-x[0]), exp(x[1]-x[0])] #function gradient\n",
    "z = [1,2]\n",
    "f_hat = lambda x: f(z) + np.inner(grad_f(z),(x-z))\n",
    "f([1,2]), f_hat(np.array([1,2]))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 2.3 Regression"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(161.37557999999999, 213.61852000000002)"
      ]
     },
     "execution_count": 47,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#beta is an n-vector, aka a weight, \n",
    "#v is a scalar, aka offset, intercept\n",
    "#x, y aka regressor, predictor\n",
    "\n",
    "#beta and v are parameters in this regression model\n",
    "beta,v = np.array([148.73, -18.85]), 54.40\n",
    "y_hat = lambda x: np.inner(x,beta) + v\n",
    "y_hat(np.array([0.846, 1])),y_hat(np.array([1.324,2])) \n",
    "#actuals: 115, 234.50"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {
    "collapsed": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[155.7042191, 167.1344646, 132.1236159, 188.2591539, 148.521102 ,\n",
       "        167.6699522, 184.2151634, 141.3748844, 134.1363545, 103.5572588,\n",
       "        198.1567356, 162.9981618, 175.3147579, 162.167224 , 234.3493851,\n",
       "        130.9418151, 158.5664088, 140.1007713, 163.1458869, 182.848738 ,\n",
       "        182.2024248, 170.1812789, 168.0208152, 201.702138 , 162.7027116,\n",
       "        170.1812789, 207.3156918, 157.6800582, 196.4394472, 148.2810646,\n",
       "        147.819376 , 209.3284304, 176.1456957, 153.8392056, 170.7721793,\n",
       "        213.4278337, 144.440212 , 212.393758 , 267.7906705, 223.6208656,\n",
       "        216.0314727, 173.3389188, 213.871009 , 213.9633213, 232.1889214,\n",
       "        172.8957435, 205.5429906, 170.9753172, 168.0208152, 252.4272601,\n",
       "        177.3274965, 164.770863 , 215.7914353, 216.3269229, 207.611142 ,\n",
       "        186.929628 , 232.1335086, 199.0430862, 184.8614766, 232.3366465,\n",
       "        266.701182 , 136.1121936, 221.0541261, 213.871009 , 214.7573596,\n",
       "        214.7942591, 275.6755136, 217.7118616, 216.1791978, 187.9637037,\n",
       "        167.6330527, 192.8940448, 309.1536985, 307.0301343, 174.0775443,\n",
       "        317.3708913, 185.3046519, 139.3621458, 330.6292508, 190.6227555,\n",
       "        214.0187341, 212.5783826, 270.0988593, 262.7680171, 372.287729 ,\n",
       "        225.4858791, 148.2256518, 244.8378672, 141.8734725, 329.3920372,\n",
       "        211.4519946, 423.4929259, 282.7109056, 273.4042243, 272.1670107,\n",
       "        183.0333626, 328.5610994, 270.0988593, 241.237052 , 373.76498  ,\n",
       "        320.0853559, 309.8000117, 479.5361516, 261.7339414, 266.350319 ,\n",
       "        400.3923975, 326.7329854, 320.6208435, 245.0410051, 287.5304211,\n",
       "        441.9585634, 261.8816665, 382.8685234, 309.541461 , 427.5369164,\n",
       "        491.7973349, 282.4154554, 249.325033 , 238.1902377, 487.162444 ,\n",
       "        418.2671346, 327.4716109, 300.9734052, 467.2749683, 494.1609365,\n",
       "        357.0720437, 381.3912724, 487.162444 , 478.3543508, 342.6872962,\n",
       "        341.3023575, 134.1363545, 141.3379849, 140.783984 , 134.87498  ,\n",
       "        126.8978246, 155.4641817, 173.3943316, 195.3499587, 144.9202868,\n",
       "        134.3394924, 106.807211 , 196.919522 , 142.2058222, 240.5538393,\n",
       "        142.2058222, 157.384608 , 151.3278789, 153.1005801, 159.5450717,\n",
       "        160.0436598, 152.952855 , 161.816361 , 129.0213888, 163.293612 ,\n",
       "        157.384608 , 139.2144207, 157.3291952, 176.7365961, 184.5660264,\n",
       "        157.384608 , 184.8614766, 163.5336494, 175.4070702, 123.3524222,\n",
       "        192.8940448, 173.3389188, 153.7468933, 192.838632 , 162.8504367,\n",
       "        199.3385364, 172.507981 , 165.3063506, 160.9300104, 136.352231 ,\n",
       "        182.5901873, 150.2383904, 168.6117156, 211.8397571, 203.4748392,\n",
       "        210.4179189, 169.0548909, 244.6901421, 254.883174 , 184.7137515,\n",
       "        165.4540757, 251.3377716, 227.9048935, 249.1773079, 227.5540305,\n",
       "        144.440212 , 165.8049387, 171.2707674, 203.6225643, 188.2591539,\n",
       "        244.7455549, 267.4952203, 123.5001473, 212.0983078, 192.3954567,\n",
       "        198.747636 , 222.6791022, 237.6547501, 214.2587715, 216.0868855,\n",
       "        196.8826225, 177.4752216, 210.9534065, 229.3267317, 260.2012776,\n",
       "        320.9162937, 188.5546041, 219.8723253, 346.9713241, 204.1580519,\n",
       "        171.5662176, 194.0758456, 219.1336998, 230.3608074, 318.404967 ,\n",
       "        214.6096345, 229.3267317, 164.0876503, 240.1660768, 278.870053 ,\n",
       "        224.0086281, 223.1776903, 282.7109056, 347.4144994, 212.042895 ,\n",
       "        299.4038419, 210.565644 , 223.4177277, 204.8043651, 206.2816161,\n",
       "        187.5205284, 319.7899057, 261.143041 , 290.4849231, 304.7219455,\n",
       "        230.7485699, 183.6796758, 378.2336325,  96.3187289, 305.1651208,\n",
       "        161.5209108, 214.6096345, 297.9265909, 269.3602338, 259.66579  ,\n",
       "        232.7798218, 460.7750639, 441.718526 , 295.6553016, 364.1074357,\n",
       "        381.3912724, 513.5129246, 450.5266192, 200.9080997, 360.2665831,\n",
       "        303.3370068, 568.7066992, 480.8102647, 533.4558131, 252.7596098,\n",
       "        432.504157 , 548.6714984, 307.2332722, 545.9570338, 380.5603346,\n",
       "        327.0838484, 141.134847 , 108.7276373, 154.3746932, 134.2840796,\n",
       "        139.8976334, 139.8976334, 153.1928924, 134.1363545, 182.497875 ,\n",
       "        162.0563984, 147.4870263, 147.3393012, 134.1363545, 152.3065418,\n",
       "        157.6800582, 159.1018964, 127.8764875, 147.8747888, 144.440212 ,\n",
       "        194.4636081, 147.6347514, 192.8940448, 140.5439466, 131.7727529,\n",
       "        140.1930836, 179.19251  , 171.2707674, 176.1456957, 135.4658804,\n",
       "        158.2155458, 199.6339866, 149.7952151, 100.6581696, 157.384608 ,\n",
       "        160.9300104, 160.2836972, 184.325989 , 179.0078854, 134.1363545,\n",
       "        131.920478 , 213.4278337, 176.4411459, 184.9537889, 266.350319 ,\n",
       "        181.7592495, 207.0202416, 189.88413  , 163.293612 , 213.871009 ,\n",
       "        205.6907157, 184.0859516, 240.9970146, 245.4287676, 200.224887 ,\n",
       "        200.224887 , 178.5647101, 168.0208152, 212.3383452, 162.942749 ,\n",
       "        188.3514662, 172.4525682, 180.9652112, 160.33911  , 168.076228 ,\n",
       "        168.076228 , 151.3278789, 169.0548909, 262.1771167, 222.383652 ,\n",
       "        175.7025204, 163.293612 , 209.9747436, 212.1906201, 220.9618138,\n",
       "        164.42     , 168.0208152, 168.3162654, 197.7135603, 194.1681579,\n",
       "        198.1567356, 220.1677755, 146.8961259, 166.8390144, 154.079243 ,\n",
       "        239.8706266, 265.574794 , 241.3478776, 183.6796758, 255.5294872,\n",
       "        180.9652112, 253.1658856, 265.4270689, 145.2711498, 257.5422258,\n",
       "        314.2686642, 157.033745 , 235.8820489, 221.7927516, 143.7938988,\n",
       "        208.7006305, 176.8843212, 255.3817621, 190.1795802, 128.3750756,\n",
       "        278.2791526, 200.9635125, 201.351275 , 154.1346558, 173.1911937,\n",
       "        212.2829324, 264.9838936, 208.6452177, 245.7242178, 244.5978298,\n",
       "        370.7550652, 247.2568816, 414.5371076, 251.3931844, 190.7704806,\n",
       "        340.4714197, 152.7128176, 153.5991682, 169.202616 , 208.2020424,\n",
       "        211.5074074, 268.178433 , 233.6661724, 202.0899005, 300.2901925,\n",
       "        260.2566904, 246.0750808, 379.4708461, 250.8945963, 213.0769707,\n",
       "        381.3912724, 214.7019468, 355.687105 , 263.8020928, 281.7691422,\n",
       "        196.2363093, 220.906401 , 209.2915309, 402.1281992, 290.5403359,\n",
       "        204.1211524, 182.2024248, 256.1203876, 252.4272601, 306.6423718,\n",
       "        203.7702894, 206.133891 , 472.4453468, 306.6977846, 306.8455097,\n",
       "        224.0640409, 358.5861942, 297.3356905, 265.223931 , 390.9934039,\n",
       "        216.2346106, 298.9606666, 255.3817621, 263.74668  , 246.4628433,\n",
       "        252.4641596, 172.0093929, 239.9629389, 444.8207531, 248.5309947,\n",
       "        286.9949335, 265.4270689, 280.8273788, 247.6446441, 274.7337502,\n",
       "        614.6492053, 587.3754746, 333.7683774, 430.4360056, 367.5974253,\n",
       "        279.2578155, 192.838632 , 427.6292287, 512.7742991, 371.936866 ,\n",
       "        474.9012607, 387.9465896, 519.7173788, 140.4885338, 150.2383904,\n",
       "        169.1472032, 150.2383904, 176.238008 , 162.942749 , 149.64749  ,\n",
       "        143.8862111, 150.5338406, 166.0449761, 158.7141339, 139.6021832,\n",
       "        134.87498  , 169.8489292, 136.352231 , 136.1676064, 151.2724661,\n",
       "        160.5237346, 192.838632 , 206.133891 , 162.5549865, 170.5321419,\n",
       "        169.7935164, 177.0874591, 177.9183969, 145.4742877, 185.7478272,\n",
       "        164.0876503, 163.293612 , 181.8515618, 258.188539 , 183.975126 ,\n",
       "        204.65664  , 184.5660264, 154.430106 , 183.9197132, 214.4064966,\n",
       "        159.1573092, 219.4845628, 139.657596 , 156.6459825, 208.7929428,\n",
       "        179.5987858, 206.133891 , 250.5991461, 198.0644233, 166.248114 ,\n",
       "        207.8142799, 206.133891 , 181.020624 , 213.0400712, 212.393758 ,\n",
       "        244.3946919, 149.8506279, 160.7822853, 317.0754411, 241.587915 ,\n",
       "        175.11162  , 170.679867 , 174.9638949, 229.3821445, 168.7594407,\n",
       "        206.133891 , 171.2707674, 233.1675843, 159.3050343, 259.314927 ,\n",
       "        191.1213436, 163.8845124, 147.2469889, 239.8152138, 194.0204328,\n",
       "        185.8955523, 157.6800582, 212.0983078, 134.2840796, 202.5884886,\n",
       "        212.3383452, 221.3495763, 212.0983078, 235.4388736, 215.4405723,\n",
       "        167.725365 , 164.3276877, 166.8390144, 141.4302972, 319.6421806,\n",
       "        216.3269229, 209.088393 , 244.89328  , 267.4952203, 163.293612 ,\n",
       "        179.8388232, 180.9097984, 323.0398579, 197.4181101, 182.2578376,\n",
       "        210.3256066, 181.4083865, 169.1472032, 188.6100169, 184.1228511,\n",
       "        258.5208887, 195.4976838, 293.1070754, 210.7133691, 273.1087741,\n",
       "        293.0516626, 159.4527594, 213.8155962, 293.6979758, 156.4982574,\n",
       "        290.8357861, 246.9060186, 261.8816665, 328.6534117, 287.6781462,\n",
       "        224.3963906, 262.1217039, 256.1203876, 180.2819985, 348.8917504,\n",
       "        245.4287676, 199.7817117, 259.5180649, 239.5197636, 267.8829828,\n",
       "        191.4167938, 212.1906201, 222.383652 , 220.3155006, 363.8119855,\n",
       "        174.5207196, 237.3038871, 265.3716561, 225.338154 , 225.7813293,\n",
       "        328.5610994, 241.587915 , 306.0514714, 296.947928 , 211.0088193,\n",
       "        212.6892082, 272.1670107, 254.1445485, 288.6199096, 251.928672 ,\n",
       "        298.074316 , 183.1441882, 233.2229971, 175.1670328, 271.7792482,\n",
       "        185.6924144, 256.4527373, 213.0769707, 318.7189305, 230.8039827,\n",
       "        343.0381592, 204.8043651, 219.7246002, 193.8727077, 244.89328  ,\n",
       "        299.4038419, 323.0952707, 275.0292004, 305.7560212, 423.1051634,\n",
       "        198.747636 , 186.3387276, 416.5498462, 257.8930888, 226.5199548,\n",
       "        290.5403359, 345.9372484, 312.5513758, 324.6094212, 236.5652616,\n",
       "        329.3920372, 345.1063106, 385.1398127, 435.107796 , 318.7004172,\n",
       "        308.06421  , 263.0080545, 318.0172045, 359.6756827, 252.9627477,\n",
       "        217.2132735, 242.3265405, 300.5302299, 384.8443625, 303.8355949,\n",
       "        209.3284304, 342.6318834, 315.5058778, 218.3950743, 371.8445537,\n",
       "        377.3103824, 460.7196511, 282.2677303, 330.4261129, 466.5732423,\n",
       "        196.9749348, 201.6467252, 455.9924479, 530.7967613, 327.0284356,\n",
       "        488.8428329, 202.3484512, 125.8083361, 146.1020876, 154.5224183,\n",
       "        144.3293864, 166.0449761, 150.0537658, 159.1573092, 157.9200956,\n",
       "        184.9537889, 154.1346558, 151.475604 , 197.8612854, 153.1005801,\n",
       "        136.2968182, 169.3503411, 146.1575004, 179.3956479, 182.3501499,\n",
       "        169.3503411, 147.043851 , 194.9621962, 185.3046519, 192.1923188,\n",
       "        210.916507 , 159.3050343, 139.9530462, 158.7141339, 164.3276877,\n",
       "        172.3602559, 159.988247 , 166.8390144, 145.5666   , 175.9979706,\n",
       "        187.6682535, 225.7813293, 147.2838884, 148.3733769, 184.6214392,\n",
       "        153.1928924, 177.6229467, 244.542417 , 190.1795802, 217.6564488,\n",
       "        200.6680623, 182.9964631, 184.7137515, 146.8407131, 216.5300608,\n",
       "        196.3840344, 175.4070702, 160.9300104, 179.8388232, 239.8152138,\n",
       "        190.5673427, 231.5426082, 150.2383904, 195.793134 , 175.7025204,\n",
       "        197.1780727, 200.1325747, 139.657596 , 208.7929428, 151.3278789,\n",
       "        223.7131779, 258.4839892, 257.7453637, 188.9977794, 239.8152138,\n",
       "        245.5764927, 156.3505323, 179.6910981, 171.4184925, 207.0202416,\n",
       "        198.4521858, 216.6777859, 269.7110968, 177.5675339, 189.2932296,\n",
       "        192.3400439, 134.1363545, 200.3726121, 191.361381 , 184.2705762,\n",
       "        236.029774 , 221.9404767, 212.042895 , 207.0202416, 129.0213888,\n",
       "        275.8601382, 190.1795802, 207.3156918, 173.8375069, 240.461527 ,\n",
       "        219.3368377, 151.475604 , 139.657596 , 212.9292456, 212.042895 ,\n",
       "        198.4521858, 175.3147579, 232.3366465, 184.2705762, 315.801328 ,\n",
       "        216.0314727, 177.4752216, 227.9048935, 199.0430862]])"
      ]
     },
     "execution_count": 62,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "D = dict(\n",
    "{'baths': np.array([2, 2, 2, 2, 1, 2, 2, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2,\n",
    "       2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 2, 1, 2, 2, 2, 2, 2,\n",
    "       2, 2, 2, 2, 1, 3, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2,\n",
    "       3, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 1, 3, 2, 2, 2, 2, 2, 3, 2, 1, 2,\n",
    "       1, 3, 2, 3, 2, 2, 2, 1, 3, 2, 2, 3, 2, 3, 4, 3, 1, 3, 3, 2, 2, 3,\n",
    "       2, 3, 3, 2, 3, 3, 2, 2, 3, 3, 2, 3, 3, 3, 3, 3, 3, 3, 4, 2, 3, 1,\n",
    "       2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1,\n",
    "       2, 2, 1, 1, 2, 2, 1, 2, 2, 2, 1, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 2,\n",
    "       1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 3, 1,\n",
    "       2, 2, 1, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 1, 2, 3, 1, 2, 2, 2, 2, 2,\n",
    "       2, 2, 2, 3, 3, 2, 3, 2, 3, 2, 2, 2, 2, 2, 2, 1, 3, 2, 2, 2, 2, 2,\n",
    "       2, 1, 3, 1, 2, 2, 2, 2, 2, 3, 4, 2, 2, 3, 4, 2, 1, 2, 1, 3, 4, 3,\n",
    "       2, 3, 3, 2, 3, 5, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1,\n",
    "       1, 1, 1, 2, 1, 1, 2, 1, 1, 2, 2, 1, 2, 1, 2, 2, 2, 1, 2, 2, 1, 2,\n",
    "       2, 1, 1, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1,\n",
    "       2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 1, 2,\n",
    "       1, 2, 1, 2, 3, 2, 1, 2, 2, 2, 3, 1, 2, 2, 1, 3, 2, 1, 2, 2, 2, 2,\n",
    "       1, 3, 2, 2, 1, 2, 2, 3, 2, 2, 2, 3, 2, 3, 2, 2, 3, 2, 2, 1, 2, 2,\n",
    "       2, 2, 2, 3, 2, 2, 2, 1, 2, 3, 2, 3, 2, 3, 2, 2, 2, 3, 2, 2, 2, 2,\n",
    "       3, 2, 2, 2, 3, 3, 3, 2, 3, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 1, 3, 2,\n",
    "       3, 3, 3, 2, 2, 4, 3, 2, 4, 3, 2, 2, 2, 2, 3, 3, 3, 3, 1, 1, 1, 1,\n",
    "       1, 2, 1, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2,\n",
    "       2, 2, 2, 2, 3, 2, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,\n",
    "       2, 2, 2, 2, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,\n",
    "       2, 2, 2, 1, 2, 1, 2, 2, 2, 2, 3, 1, 1, 2, 1, 1, 2, 2, 2, 2, 2, 2,\n",
    "       2, 1, 2, 2, 1, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 3, 2, 2, 2,\n",
    "       3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2,\n",
    "       2, 3, 2, 3, 3, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 1, 2, 2, 3, 2, 3,\n",
    "       2, 2, 2, 3, 2, 3, 2, 3, 3, 2, 2, 3, 2, 2, 3, 2, 3, 3, 2, 2, 3, 3,\n",
    "       2, 2, 2, 2, 2, 3, 1, 2, 2, 2, 3, 2, 1, 2, 3, 1, 3, 3, 3, 2, 3, 2,\n",
    "       1, 1, 3, 4, 3, 3, 2, 1, 1, 1, 1, 1, 2, 2, 1, 2, 1, 2, 2, 1, 1, 1,\n",
    "       1, 1, 2, 2, 1, 2, 2, 2, 2, 2, 1, 2, 2, 2, 1, 2, 1, 2, 1, 2, 1, 1,\n",
    "       2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 1, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2,\n",
    "       2, 1, 2, 1, 1, 3, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 3, 2, 2, 2, 1, 2,\n",
    "       1, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 2, 2, 2, 2, 2, 3,\n",
    "       2, 2, 2, 2]), 'location': np.array([2, 2, 2, 3, 3, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 3, 3, 2, 3, 3,\n",
    "       2, 2, 2, 3, 3, 2, 3, 3, 2, 2, 3, 3, 2, 2, 2, 3, 3, 2, 3, 3, 3, 3,\n",
    "       3, 3, 3, 3, 2, 3, 2, 3, 2, 3, 3, 3, 3, 2, 3, 3, 4, 2, 2, 3, 3, 2,\n",
    "       3, 3, 3, 2, 2, 2, 3, 2, 2, 3, 3, 3, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2,\n",
    "       3, 3, 3, 3, 3, 3, 3, 1, 3, 3, 2, 2, 3, 2, 2, 3, 2, 3, 3, 4, 3, 3,\n",
    "       3, 3, 2, 3, 3, 2, 3, 2, 1, 3, 4, 3, 3, 3, 2, 4, 3, 3, 3, 4, 2, 2,\n",
    "       1, 3, 2, 3, 3, 2, 2, 3, 3, 3, 2, 3, 2, 3, 3, 3, 2, 2, 2, 3, 2, 2,\n",
    "       3, 2, 2, 2, 2, 2, 2, 3, 2, 2, 3, 3, 3, 2, 3, 3, 3, 3, 3, 2, 2, 3,\n",
    "       2, 2, 3, 2, 3, 2, 2, 3, 3, 2, 3, 3, 2, 3, 2, 2, 3, 2, 3, 2, 3, 3,\n",
    "       2, 2, 3, 2, 2, 3, 3, 2, 4, 2, 3, 2, 2, 3, 2, 3, 1, 2, 2, 4, 2, 3,\n",
    "       3, 2, 3, 2, 2, 2, 3, 3, 3, 2, 2, 4, 2, 4, 2, 2, 3, 2, 2, 3, 4, 4,\n",
    "       3, 3, 2, 1, 4, 3, 4, 3, 1, 3, 3, 4, 4, 3, 3, 2, 1, 4, 2, 3, 2, 2,\n",
    "       2, 3, 3, 2, 4, 2, 1, 2, 1, 3, 2, 3, 3, 2, 2, 2, 3, 3, 3, 3, 2, 2,\n",
    "       2, 3, 2, 2, 2, 2, 3, 2, 3, 2, 4, 3, 2, 3, 2, 3, 3, 2, 3, 3, 2, 2,\n",
    "       2, 3, 4, 3, 2, 3, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 3, 4,\n",
    "       2, 2, 3, 3, 2, 2, 3, 2, 2, 2, 3, 2, 3, 3, 3, 2, 4, 4, 2, 2, 3, 2,\n",
    "       2, 3, 2, 2, 3, 3, 2, 3, 3, 2, 1, 4, 4, 2, 3, 3, 3, 2, 3, 3, 2, 3,\n",
    "       2, 2, 3, 2, 3, 2, 3, 3, 4, 2, 3, 2, 3, 2, 3, 3, 2, 3, 2, 2, 2, 2,\n",
    "       2, 3, 4, 2, 2, 4, 2, 2, 3, 3, 3, 2, 3, 1, 2, 4, 2, 3, 3, 2, 3, 3,\n",
    "       2, 2, 3, 3, 3, 2, 2, 2, 3, 2, 3, 3, 3, 2, 2, 2, 1, 4, 3, 1, 2, 1,\n",
    "       2, 4, 1, 4, 3, 3, 2, 4, 2, 3, 4, 4, 2, 3, 4, 2, 4, 3, 3, 2, 2, 2,\n",
    "       1, 3, 2, 3, 3, 2, 3, 2, 3, 2, 3, 2, 2, 2, 2, 2, 2, 3, 3, 3, 2, 2,\n",
    "       2, 3, 3, 2, 2, 2, 3, 2, 3, 3, 3, 2, 3, 2, 2, 3, 3, 2, 2, 3, 3, 3,\n",
    "       3, 3, 2, 3, 2, 3, 2, 3, 3, 3, 2, 2, 3, 2, 2, 4, 3, 2, 4, 3, 3, 3,\n",
    "       3, 2, 3, 2, 2, 4, 3, 2, 3, 2, 2, 2, 3, 2, 2, 2, 3, 2, 2, 3, 2, 2,\n",
    "       2, 2, 3, 3, 4, 2, 1, 1, 2, 3, 2, 3, 3, 2, 2, 3, 3, 4, 2, 2, 3, 2,\n",
    "       2, 3, 3, 2, 3, 2, 2, 2, 2, 2, 3, 3, 2, 3, 3, 2, 4, 2, 2, 4, 2, 3,\n",
    "       3, 2, 4, 3, 2, 2, 2, 3, 3, 3, 2, 2, 2, 3, 4, 3, 1, 2, 4, 3, 4, 3,\n",
    "       2, 2, 4, 4, 3, 4, 2, 4, 2, 2, 3, 2, 4, 3, 2, 2, 2, 2, 2, 2, 4, 3,\n",
    "       2, 4, 4, 3, 4, 4, 3, 3, 2, 4, 3, 4, 1, 2, 4, 1, 4, 3, 4, 2, 4, 2,\n",
    "       2, 1, 4, 3, 4, 4, 3, 3, 3, 2, 3, 2, 2, 2, 2, 3, 3, 2, 3, 2, 2, 3,\n",
    "       2, 2, 3, 3, 3, 3, 3, 3, 2, 1, 3, 3, 3, 3, 2, 3, 2, 2, 2, 3, 2, 1,\n",
    "       3, 2, 3, 2, 3, 3, 2, 2, 3, 1, 3, 2, 2, 4, 3, 3, 3, 2, 3, 3, 2, 3,\n",
    "       3, 2, 2, 3, 2, 2, 2, 2, 3, 3, 2, 2, 3, 3, 2, 3, 2, 1, 2, 3, 2, 4,\n",
    "       2, 3, 3, 2, 3, 3, 3, 2, 3, 3, 2, 3, 2, 2, 2, 2, 3, 4, 3, 3, 3, 3,\n",
    "       3, 2, 3, 4]), 'price': np.array([ 94.905,  98.937, 100.309, 106.25 , 107.502, 108.75 , 110.7  ,\n",
    "       113.263, 116.25 , 120.   , 121.63 , 122.   , 122.682, 123.   ,\n",
    "       124.1  , 125.   , 126.64 , 127.281, 129.   , 131.2  , 132.   ,\n",
    "       133.   , 134.555, 136.5  , 138.75 , 141.   , 146.25 , 147.308,\n",
    "       148.75 , 149.593, 150.   , 152.   , 154.   , 156.896, 161.25 ,\n",
    "       161.5  , 164.   , 165.   , 166.357, 166.357, 168.   , 170.   ,\n",
    "       173.   , 174.25 , 174.313, 178.48 , 178.76 , 181.   , 181.872,\n",
    "       182.587, 182.716, 182.75 , 183.2  , 188.741, 189.   , 192.067,\n",
    "       194.   , 194.818, 198.   , 199.5  , 200.   , 200.   , 208.   ,\n",
    "       212.864, 221.   , 221.   , 223.058, 227.887, 231.477, 234.697,\n",
    "       235.   , 236.   , 236.685, 237.8  , 240.122, 242.638, 244.   ,\n",
    "       244.96 , 245.918, 250.   , 250.   , 250.134, 254.2  , 254.2  ,\n",
    "       258.   , 260.   , 260.014, 265.   , 271.742, 273.75 , 275.086,\n",
    "       280.987, 285.   , 287.417, 291.   , 292.024, 297.   , 298.   ,\n",
    "       299.   , 304.037, 311.   , 315.537, 320.   , 328.36 , 334.15 ,\n",
    "       335.75 , 335.75 , 344.25 , 346.21 , 347.029, 347.65 , 351.3  ,\n",
    "       370.5  , 372.   , 375.   , 381.3  , 381.942, 387.731, 391.   ,\n",
    "       394.47 , 395.   , 400.186, 415.   , 425.   , 430.   , 460.   ,\n",
    "       461.   , 489.332, 510.   , 539.   , 660.   ,  69.   ,  70.   ,\n",
    "        71.   ,  78.   ,  78.4  ,  80.   ,  89.   ,  90.   ,  90.   ,\n",
    "        92.   ,  93.675,  98.   ,  98.   ,  99.   , 100.   , 106.716,\n",
    "       111.   , 111.   , 114.8  , 120.108, 123.225, 123.75 , 125.   ,\n",
    "       125.   , 126.   , 129.   , 134.   , 135.   , 135.5  , 140.   ,\n",
    "       140.   , 142.5  , 143.5  , 145.   , 145.   , 145.   , 146.   ,\n",
    "       148.5  , 149.   , 150.   , 150.   , 152.   , 156.   , 156.   ,\n",
    "       156.   , 157.788, 161.653, 161.829, 165.   , 168.   , 169.   ,\n",
    "       175.   , 176.25 , 179.   , 180.   , 180.4  , 182.   , 184.5  ,\n",
    "       185.   , 189.   , 194.   , 195.   , 200.   , 205.   , 205.   ,\n",
    "       205.   , 207.   , 215.   , 215.   , 222.381, 225.   , 225.   ,\n",
    "       225.   , 228.   , 229.665, 230.   , 230.   , 230.   , 234.   ,\n",
    "       235.   , 236.25 , 245.   , 245.   , 245.   , 250.   , 250.   ,\n",
    "       250.   , 255.   , 257.729, 260.   , 261.   , 264.469, 265.   ,\n",
    "       270.   , 270.   , 275.   , 275.   , 280.   , 286.013, 292.   ,\n",
    "       292.   , 293.993, 294.   , 296.769, 300.   , 300.   , 300.5  ,\n",
    "       305.   , 319.789, 330.   , 330.   , 331.   , 334.   , 336.   ,\n",
    "       339.   , 339.   , 345.   , 356.   , 361.745, 361.948, 370.   ,\n",
    "       385.   , 399.   , 402.   , 406.026, 420.   , 425.   , 445.   ,\n",
    "       450.   , 460.   , 460.   , 465.   , 471.75 , 484.   , 495.   ,\n",
    "       572.5  , 582.   , 613.401, 680.   , 699.   ,  61.5  ,  62.05 ,\n",
    "        65.   ,  65.   ,  68.   ,  68.   ,  77.   ,  82.732,  84.   ,\n",
    "        84.675,  85.   ,  90.   ,  90.   ,  91.   ,  95.   ,  97.5  ,\n",
    "       100.   , 101.   , 102.75 , 112.5  , 113.   , 114.   , 114.   ,\n",
    "       114.75 , 115.   , 115.   , 116.1  , 119.25 , 120.   , 120.   ,\n",
    "       120.108, 121.5  , 121.725, 122.   , 123.   , 125.   , 125.573,\n",
    "       126.714, 126.96 , 127.   , 127.5  , 130.   , 133.105, 136.5  ,\n",
    "       139.5  , 140.   , 140.8  , 145.   , 147.   , 149.6  , 150.   ,\n",
    "       150.   , 155.   , 155.435, 155.5  , 158.   , 158.   , 160.   ,\n",
    "       160.   , 164.   , 164.   , 165.   , 167.   , 167.293, 167.293,\n",
    "       168.   , 170.   , 170.   , 170.   , 174.   , 178.   , 180.   ,\n",
    "       180.   , 180.   , 182.   , 188.325, 191.5  , 192.   , 192.7  ,\n",
    "       195.   , 197.654, 198.   , 200.345, 203.   , 207.   , 208.   ,\n",
    "       210.   , 212.   , 213.675, 213.697, 215.   , 215.   , 215.1  ,\n",
    "       217.5  , 218.   , 220.   , 221.   , 222.9  , 223.139, 225.5  ,\n",
    "       228.327, 230.   , 230.   , 230.522, 231.2  , 232.   , 232.5  ,\n",
    "       233.641, 234.   , 234.5  , 235.   , 236.073, 238.   , 238.861,\n",
    "       239.7  , 240.   , 240.   , 241.   , 245.   , 246.   , 247.234,\n",
    "       247.48 , 249.862, 251.   , 252.155, 254.172, 258.   , 260.   ,\n",
    "       261.   , 261.   , 262.5  , 266.   , 266.   , 270.   , 274.425,\n",
    "       275.336, 277.98 , 280.   , 284.686, 284.893, 285.   , 285.   ,\n",
    "       295.   , 296.   , 296.056, 297.359, 299.94 , 305.   , 311.328,\n",
    "       313.138, 316.63 , 320.   , 320.   , 325.   , 328.578, 331.   ,\n",
    "       340.   , 345.746, 351.   , 353.767, 356.035, 360.552, 362.305,\n",
    "       365.   , 370.   , 378.   , 388.   , 395.1  , 400.   , 408.431,\n",
    "       423.   , 427.5  , 430.922, 445.   , 450.   , 452.   , 470.   ,\n",
    "       475.   , 484.5  , 500.   , 506.688, 528.   , 579.093, 636.   ,\n",
    "       668.365, 676.2  , 691.659,  55.422,  63.   ,  65.   ,  65.   ,\n",
    "        65.   ,  66.5  ,  71.   ,  75.   ,  77.   ,  85.   ,  95.625,\n",
    "        96.14 , 104.25 , 105.   , 108.   , 109.   , 115.   , 115.   ,\n",
    "       115.5  , 115.62 , 116.   , 122.   , 122.5  , 123.   , 124.   ,\n",
    "       124.   , 124.413, 125.   , 130.   , 131.75 , 137.721, 137.76 ,\n",
    "       138.   , 140.   , 145.   , 145.   , 150.   , 150.   , 151.   ,\n",
    "       155.   , 155.8  , 156.142, 158.   , 160.   , 161.5  , 161.6  ,\n",
    "       162.   , 165.   , 165.   , 167.293, 168.   , 168.   , 168.75 ,\n",
    "       168.75 , 170.   , 170.25 , 173.   , 176.095, 176.25 , 178.   ,\n",
    "       179.   , 180.   , 180.   , 180.   , 181.   , 182.   , 182.587,\n",
    "       185.074, 185.833, 186.785, 187.   , 188.335, 190.   , 190.   ,\n",
    "       190.   , 190.   , 191.25 , 193.   , 193.5  , 195.   , 195.   ,\n",
    "       195.   , 198.   , 199.9  , 200.   , 201.   , 204.918, 205.   ,\n",
    "       205.878, 207.   , 207.744, 209.   , 210.   , 210.944, 213.75 ,\n",
    "       215.   , 215.   , 220.   , 220.   , 220.   , 220.   , 220.   ,\n",
    "       220.702, 222.   , 222.75 , 225.   , 225.   , 228.75 , 229.   ,\n",
    "       230.095, 232.5  , 233.   , 233.5  , 239.   , 240.   , 240.   ,\n",
    "       240.971, 242.   , 243.45 , 243.5  , 246.544, 246.75 , 247.   ,\n",
    "       249.   , 249.   , 250.   , 250.   , 252.   , 255.   , 255.   ,\n",
    "       255.   , 257.2  , 260.   , 260.   , 263.5  , 266.51 , 275.   ,\n",
    "       276.   , 276.5  , 278.   , 279.   , 280.   , 280.   , 285.   ,\n",
    "       288.   , 289.   , 290.   , 290.   , 293.996, 294.173, 295.   ,\n",
    "       298.   , 299.   , 300.   , 300.   , 300.   , 300.567, 303.   ,\n",
    "       305.   , 310.   , 310.   , 310.   , 311.518, 312.   , 315.   ,\n",
    "       315.   , 315.   , 315.   , 320.   , 322.   , 325.   , 328.37 ,\n",
    "       330.   , 331.2  , 332.   , 334.   , 335.   , 341.   , 346.375,\n",
    "       349.   , 350.   , 350.   , 350.   , 351.   , 360.   , 367.463,\n",
    "       380.   , 380.578, 386.222, 395.5  , 397.   , 400.   , 413.5  ,\n",
    "       415.   , 420.454, 425.   , 441.   , 445.   , 446.   , 450.   ,\n",
    "       455.   , 525.   , 545.   , 575.   , 575.   , 598.695, 600.   ,\n",
    "       610.   ,  56.95 ,  60.   ,  61.   ,  62.   ,  68.566,  70.   ,\n",
    "        80.   ,  85.5  ,  92.   ,  93.6  ,  95.   ,  97.75 , 104.   ,\n",
    "       105.   , 107.666, 109.   , 110.   , 110.   , 112.5  , 114.8  ,\n",
    "       116.   , 121.5  , 122.   , 123.675, 126.854, 127.059, 128.687,\n",
    "       129.5  , 130.   , 131.75 , 132.   , 134.   , 134.   , 142.   ,\n",
    "       143.012, 145.846, 147.   , 148.75 , 150.   , 150.454, 151.087,\n",
    "       157.296, 157.5  , 160.   , 160.   , 161.25 , 164.   , 165.   ,\n",
    "       165.75 , 166.   , 169.   , 170.   , 170.   , 170.725, 171.75 ,\n",
    "       172.   , 173.056, 174.   , 174.25 , 176.85 , 179.5  , 185.   ,\n",
    "       188.7  , 189.   , 189.   , 189.836, 190.   , 191.25 , 191.675,\n",
    "       195.5  , 198.   , 200.   , 200.   , 200.   , 201.528, 204.75 ,\n",
    "       205.   , 205.   , 205.9  , 207.   , 207.973, 208.25 , 208.318,\n",
    "       209.347, 211.5  , 212.   , 213.   , 216.   , 216.021, 219.   ,\n",
    "       219.794, 220.   , 220.   , 220.   , 223.   , 224.   , 224.252,\n",
    "       225.   , 228.   , 229.027, 229.5  , 230.   , 230.   , 232.425,\n",
    "       234.   , 235.   , 235.301, 235.738]), 'beds': np.array([2, 3, 3, 3, 3, 2, 2, 2, 2, 2, 3, 3, 4, 4, 3, 3, 3, 3, 3, 4, 3, 2,\n",
    "       3, 3, 3, 2, 3, 3, 4, 4, 1, 2, 3, 3, 2, 4, 4, 4, 4, 4, 3, 3, 4, 3,\n",
    "       4, 3, 3, 3, 3, 4, 3, 3, 4, 3, 3, 3, 3, 3, 3, 4, 3, 3, 3, 4, 4, 2,\n",
    "       5, 4, 3, 3, 4, 4, 4, 3, 3, 3, 3, 3, 5, 3, 4, 2, 3, 4, 5, 3, 3, 3,\n",
    "       3, 4, 3, 4, 4, 4, 3, 2, 5, 3, 2, 5, 4, 5, 5, 4, 2, 3, 4, 3, 4, 3,\n",
    "       4, 4, 4, 3, 5, 5, 4, 4, 3, 4, 3, 4, 3, 5, 5, 5, 4, 4, 5, 4, 3, 2,\n",
    "       4, 2, 2, 2, 3, 4, 3, 2, 3, 2, 2, 1, 3, 1, 3, 3, 3, 2, 3, 3, 3, 3,\n",
    "       3, 3, 3, 2, 3, 3, 3, 3, 2, 3, 2, 4, 3, 4, 3, 3, 3, 4, 2, 3, 2, 2,\n",
    "       2, 3, 2, 3, 3, 3, 3, 3, 3, 2, 3, 4, 4, 3, 4, 3, 3, 3, 3, 4, 4, 2,\n",
    "       4, 3, 3, 3, 4, 3, 4, 4, 3, 2, 3, 3, 3, 3, 3, 4, 2, 3, 4, 3, 3, 3,\n",
    "       4, 3, 4, 4, 4, 3, 4, 4, 4, 3, 4, 3, 3, 3, 3, 3, 4, 4, 3, 4, 2, 3,\n",
    "       3, 2, 4, 3, 4, 4, 3, 4, 4, 5, 5, 3, 4, 4, 5, 4, 2, 4, 3, 4, 4, 5,\n",
    "       2, 4, 5, 4, 4, 5, 5, 3, 2, 2, 2, 2, 2, 2, 2, 3, 2, 3, 3, 2, 2, 3,\n",
    "       2, 1, 2, 4, 3, 3, 4, 3, 2, 2, 2, 3, 3, 2, 2, 3, 2, 3, 3, 3, 2, 4,\n",
    "       4, 2, 2, 4, 3, 2, 2, 3, 3, 3, 3, 4, 3, 5, 3, 3, 3, 3, 4, 3, 3, 2,\n",
    "       2, 3, 2, 3, 4, 4, 3, 3, 4, 3, 3, 3, 3, 3, 4, 2, 3, 3, 3, 3, 3, 3,\n",
    "       3, 3, 2, 4, 4, 4, 3, 4, 2, 4, 4, 3, 3, 3, 2, 4, 3, 3, 4, 3, 4, 3,\n",
    "       2, 4, 3, 2, 3, 3, 2, 4, 3, 3, 4, 4, 4, 5, 4, 3, 4, 4, 4, 3, 3, 4,\n",
    "       3, 4, 2, 4, 4, 4, 4, 3, 3, 4, 3, 4, 4, 3, 3, 3, 4, 5, 4, 4, 3, 4,\n",
    "       4, 4, 3, 3, 5, 5, 5, 4, 3, 4, 3, 4, 4, 4, 4, 3, 3, 2, 3, 3, 5, 3,\n",
    "       4, 4, 2, 3, 4, 4, 5, 3, 4, 3, 3, 3, 4, 5, 4, 4, 5, 5, 2, 2, 2, 2,\n",
    "       2, 2, 2, 2, 2, 2, 3, 2, 2, 4, 2, 4, 2, 1, 3, 3, 3, 3, 3, 4, 3, 4,\n",
    "       3, 4, 3, 2, 4, 3, 3, 3, 3, 2, 3, 3, 4, 3, 3, 3, 4, 3, 3, 4, 3, 4,\n",
    "       3, 3, 5, 4, 3, 3, 3, 3, 3, 3, 3, 3, 4, 3, 3, 3, 3, 3, 3, 4, 3, 4,\n",
    "       3, 3, 3, 3, 4, 2, 3, 3, 3, 4, 4, 3, 3, 3, 3, 3, 4, 3, 3, 4, 4, 3,\n",
    "       3, 1, 4, 3, 4, 4, 2, 2, 4, 3, 2, 3, 5, 3, 4, 4, 3, 3, 5, 3, 4, 3,\n",
    "       4, 4, 3, 2, 3, 4, 3, 4, 3, 3, 4, 3, 3, 4, 3, 3, 3, 4, 3, 3, 3, 3,\n",
    "       3, 5, 3, 4, 5, 3, 4, 3, 3, 4, 3, 4, 4, 4, 4, 4, 2, 2, 3, 6, 3, 5,\n",
    "       3, 3, 3, 4, 4, 5, 4, 4, 5, 3, 3, 4, 4, 3, 4, 4, 4, 3, 3, 4, 5, 5,\n",
    "       3, 3, 3, 3, 4, 4, 3, 3, 3, 3, 5, 4, 2, 3, 4, 3, 5, 5, 4, 4, 4, 3,\n",
    "       3, 2, 4, 5, 4, 5, 4, 1, 2, 2, 2, 2, 4, 3, 2, 2, 3, 3, 3, 3, 1, 3,\n",
    "       3, 3, 3, 3, 3, 4, 3, 2, 4, 3, 3, 3, 3, 4, 2, 3, 3, 3, 3, 3, 2, 3,\n",
    "       4, 2, 3, 3, 3, 3, 3, 4, 3, 2, 4, 3, 3, 3, 3, 3, 2, 3, 2, 3, 3, 4,\n",
    "       4, 3, 3, 3, 3, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 2, 3, 2, 2, 3,\n",
    "       3, 3, 4, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 3, 3, 3, 3, 3, 4, 4, 3, 4,\n",
    "       3, 3, 4, 3]), 'area': np.array([0.941, 1.146, 0.909, 1.289, 1.02 , 1.022, 1.134, 0.844, 0.795,\n",
    "       0.588, 1.356, 1.118, 1.329, 1.24 , 1.601, 0.901, 1.088, 0.963,\n",
    "       1.119, 1.38 , 1.248, 1.039, 1.152, 1.38 , 1.116, 1.039, 1.418,\n",
    "       1.082, 1.472, 1.146, 0.76 , 1.304, 1.207, 1.056, 1.043, 1.587,\n",
    "       1.12 , 1.58 , 1.955, 1.656, 1.477, 1.188, 1.59 , 1.463, 1.714,\n",
    "       1.185, 1.406, 1.172, 1.152, 1.851, 1.215, 1.13 , 1.603, 1.479,\n",
    "       1.42 , 1.28 , 1.586, 1.362, 1.266, 1.715, 1.82 , 0.936, 1.511,\n",
    "       1.59 , 1.596, 1.341, 2.136, 1.616, 1.478, 1.287, 1.277, 1.448,\n",
    "       2.235, 2.093, 1.193, 2.163, 1.269, 0.958, 2.508, 1.305, 1.591,\n",
    "       1.326, 1.843, 1.921, 2.79 , 1.541, 1.018, 1.672, 0.975, 2.372,\n",
    "       1.446, 3.009, 2.056, 1.993, 1.857, 1.126, 2.494, 1.843, 1.52 ,\n",
    "       2.8  , 2.309, 2.367, 3.516, 1.914, 1.69 , 2.725, 2.354, 2.185,\n",
    "       1.801, 1.961, 3.134, 1.915, 2.734, 2.11 , 3.164, 3.599, 2.054,\n",
    "       1.83 , 1.627, 3.44 , 2.846, 2.359, 2.052, 3.433, 3.615, 2.687,\n",
    "       2.724, 3.44 , 3.508, 2.462, 2.325, 0.795, 1.099, 0.84 , 0.8  ,\n",
    "       0.746, 1.067, 1.316, 1.337, 0.868, 0.924, 0.61 , 1.22 , 0.722,\n",
    "       1.643, 0.722, 1.08 , 1.039, 1.051, 0.967, 1.098, 1.05 , 1.11 ,\n",
    "       0.888, 1.12 , 1.08 , 0.957, 0.952, 1.211, 1.264, 1.08 , 1.266,\n",
    "       0.994, 1.202, 0.722, 1.448, 1.188, 1.183, 1.32 , 1.117, 1.364,\n",
    "       1.31 , 1.006, 1.104, 0.81 , 1.123, 0.904, 1.156, 1.321, 1.392,\n",
    "       1.439, 1.159, 1.671, 1.74 , 1.265, 1.007, 1.716, 1.685, 1.829,\n",
    "       1.555, 1.12 , 1.137, 1.174, 1.393, 1.289, 1.799, 1.953, 0.723,\n",
    "       1.578, 1.317, 1.36 , 1.522, 1.751, 1.465, 1.605, 1.475, 1.216,\n",
    "       1.315, 1.567, 1.776, 2.187, 1.291, 1.503, 2.491, 1.269, 1.176,\n",
    "       1.456, 1.498, 1.574, 2.17 , 1.595, 1.567, 1.253, 1.768, 2.03 ,\n",
    "       1.531, 1.653, 2.056, 2.494, 1.45 , 2.169, 1.44 , 1.527, 1.401,\n",
    "       1.411, 1.284, 2.307, 1.91 , 1.981, 2.205, 1.449, 1.258, 2.575,\n",
    "       0.539, 2.208, 1.108, 1.595, 2.159, 1.838, 1.9  , 1.718, 3.389,\n",
    "       3.26 , 2.016, 2.607, 2.724, 3.746, 3.192, 1.247, 2.581, 2.068,\n",
    "       3.992, 3.397, 3.881, 1.598, 3.07 , 3.984, 2.222, 3.838, 2.846,\n",
    "       2.484, 0.97 , 0.623, 0.932, 0.796, 0.834, 0.834, 0.924, 0.795,\n",
    "       1.25 , 0.984, 1.013, 1.012, 0.795, 0.918, 1.082, 0.964, 0.625,\n",
    "       0.888, 1.12 , 1.331, 1.014, 1.448, 0.966, 0.779, 0.836, 1.1  ,\n",
    "       1.174, 1.207, 0.804, 0.958, 1.366, 0.901, 0.696, 1.08 , 1.104,\n",
    "       0.972, 1.39 , 1.354, 0.795, 0.78 , 1.587, 1.209, 1.139, 1.69 ,\n",
    "       1.245, 1.416, 1.3  , 1.12 , 1.59 , 1.407, 1.516, 1.646, 1.676,\n",
    "       1.37 , 1.37 , 1.351, 1.152, 1.452, 0.99 , 1.162, 1.182, 1.112,\n",
    "       1.1  , 1.28 , 1.28 , 1.039, 1.159, 1.917, 1.52 , 1.204, 1.12 ,\n",
    "       1.436, 1.451, 1.638, 1.   , 1.152, 1.154, 1.353, 1.329, 1.356,\n",
    "       1.505, 1.009, 1.144, 0.93 , 1.766, 1.94 , 1.776, 1.258, 1.872,\n",
    "       1.112, 1.856, 1.939, 0.998, 1.758, 2.142, 0.95 , 1.739, 1.516,\n",
    "       0.988, 1.555, 1.212, 1.871, 1.302, 0.756, 2.026, 1.375, 1.25 ,\n",
    "       1.058, 1.187, 1.324, 1.936, 1.427, 1.678, 1.798, 2.652, 1.816,\n",
    "       3.076, 1.844, 1.306, 2.447, 1.176, 1.182, 1.16 , 1.424, 1.574,\n",
    "       1.83 , 1.724, 1.255, 2.175, 1.904, 1.808, 2.711, 1.713, 1.457,\n",
    "       2.724, 1.468, 2.55 , 1.928, 1.922, 1.343, 1.51 , 1.559, 2.992,\n",
    "       2.109, 1.524, 1.248, 1.876, 1.851, 2.218, 1.394, 1.41 , 3.468,\n",
    "       2.346, 2.347, 1.659, 2.442, 2.155, 1.81 , 2.789, 1.606, 2.166,\n",
    "       1.871, 1.8  , 1.683, 1.596, 1.179, 1.639, 3.281, 1.697, 2.085,\n",
    "       1.939, 1.788, 1.691, 2.002, 4.303, 4.246, 2.274, 3.056, 2.503,\n",
    "       1.905, 1.32 , 3.037, 3.741, 2.66 , 3.357, 2.896, 3.788, 0.838,\n",
    "       0.904, 1.032, 0.904, 1.08 , 0.99 , 0.9  , 0.861, 0.906, 1.011,\n",
    "       1.089, 0.832, 0.8  , 1.292, 0.81 , 1.064, 0.911, 0.846, 1.32 ,\n",
    "       1.41 , 1.115, 1.169, 1.164, 1.341, 1.219, 1.127, 1.272, 1.253,\n",
    "       1.12 , 1.118, 1.89 , 1.26 , 1.4  , 1.264, 1.06 , 1.132, 1.466,\n",
    "       1.092, 1.628, 0.96 , 1.075, 1.428, 1.358, 1.41 , 1.711, 1.483,\n",
    "       1.14 , 1.549, 1.41 , 1.24 , 1.712, 1.58 , 1.669, 1.029, 1.103,\n",
    "       2.161, 1.65 , 1.2  , 1.17 , 1.199, 1.695, 1.157, 1.41 , 1.174,\n",
    "       1.593, 1.093, 1.77 , 1.436, 1.124, 1.139, 1.638, 1.328, 1.273,\n",
    "       1.082, 1.578, 0.796, 1.386, 1.452, 1.513, 1.578, 1.736, 1.473,\n",
    "       1.15 , 1.127, 1.144, 0.972, 2.306, 1.479, 1.43 , 1.8  , 1.953,\n",
    "       1.12 , 1.232, 0.984, 2.329, 1.351, 1.376, 1.566, 1.115, 1.032,\n",
    "       1.419, 1.261, 1.637, 1.338, 2.254, 1.441, 1.991, 2.126, 1.094,\n",
    "       1.462, 2.258, 1.074, 2.111, 1.686, 1.915, 2.367, 1.962, 1.406,\n",
    "       1.789, 1.876, 1.235, 2.504, 1.676, 1.367, 1.899, 1.636, 1.828,\n",
    "       1.438, 1.451, 1.52 , 1.506, 2.605, 1.196, 1.621, 1.811, 1.54 ,\n",
    "       1.543, 2.494, 1.65 , 2.214, 2.28 , 1.443, 1.582, 1.857, 1.735,\n",
    "       2.096, 1.72 , 2.16 , 1.382, 1.721, 1.328, 1.982, 1.144, 1.623,\n",
    "       1.457, 2.555, 1.577, 2.592, 1.401, 1.502, 1.327, 1.8  , 2.169,\n",
    "       2.457, 2.004, 2.212, 3.134, 1.36 , 1.276, 2.962, 1.888, 1.548,\n",
    "       2.109, 2.484, 2.258, 2.212, 1.616, 2.372, 2.606, 2.877, 2.96 ,\n",
    "       2.172, 2.1  , 1.795, 2.295, 2.577, 1.727, 1.485, 1.655, 2.049,\n",
    "       2.875, 2.199, 1.304, 2.334, 2.278, 1.493, 2.787, 2.824, 3.261,\n",
    "       2.053, 2.379, 3.173, 1.348, 1.252, 3.229, 3.863, 2.356, 3.579,\n",
    "       1.512, 0.611, 0.876, 0.933, 0.864, 1.011, 1.158, 1.092, 0.956,\n",
    "       1.139, 1.058, 1.04 , 1.354, 1.051, 0.682, 1.161, 1.004, 1.229,\n",
    "       1.249, 1.161, 1.01 , 1.462, 1.269, 1.188, 1.57 , 1.093, 0.962,\n",
    "       1.089, 1.127, 1.309, 0.97 , 1.144, 1.   , 1.206, 1.285, 1.543,\n",
    "       0.884, 1.019, 1.392, 0.924, 1.217, 1.67 , 1.302, 1.488, 1.373,\n",
    "       1.381, 1.265, 0.881, 1.608, 1.344, 1.202, 1.104, 1.232, 1.638,\n",
    "       1.177, 1.582, 0.904, 1.34 , 1.204, 1.477, 1.497, 0.96 , 1.428,\n",
    "       1.039, 1.529, 1.892, 1.887, 1.294, 1.638, 1.677, 1.073, 1.231,\n",
    "       1.175, 1.416, 1.358, 1.609, 1.968, 1.089, 1.296, 1.189, 0.795,\n",
    "       1.371, 1.31 , 1.262, 1.74 , 1.517, 1.45 , 1.416, 0.888, 1.882,\n",
    "       1.302, 1.418, 1.319, 1.77 , 1.627, 1.04 , 0.96 , 1.456, 1.45 ,\n",
    "       1.358, 1.329, 1.715, 1.262, 2.28 , 1.477, 1.216, 1.685, 1.362]), 'condo': np.array([1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,\n",
    "       0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,\n",
    "       0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0,\n",
    "       0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
    "       0, 0, 0, 0])})\n",
    "\n",
    "price = D[\"price\"]\n",
    "area = D[\"area\"]\n",
    "beds = D[\"beds\"]\n",
    "v = 54.4017 #scalar\n",
    "beta = [147.7251, -18.8534] #weights *area beta is 148.73 in textbook, might be a small typo here\n",
    "#scalar and weights were determined using a method learned in Ch13: Least Squares\n",
    "y_hat = np.array([beta[0]*area + beta[1]*beds])+v\n",
    "#math notation: y hat = (x^T B) + v = B1*x1 + B2*x2 + v\n",
    "#this function returns predictions for each house based on beds and area\n",
    "#it applies a beta to each feature, and an offset, scalar to each price\n",
    "y_hat"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(price, y_hat)\n",
    "plt.plot([0,800],[0,800], linestyle='dashed', color = 'red')\n",
    "plt.xlabel(\"actual\")\n",
    "plt.xlim(0,800)\n",
    "plt.ylabel(\"predicted\")\n",
    "plt.ylim(0,800)\n",
    "plt.grid(True)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
